package com.xiaoyun.activiti01;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.TaskService;
import org.activiti.engine.task.Task;

/**
 * 查询当前用户的任务列表
 * 处理当前用户的任务
 * * 背后影响的表：
 * *  act_hi_actinst  已完成的活动信息
 * *  act_hi_identitylink  参与者信息
 * *  act_hi_taskinst  任务实例
 * *  act_ru_execution   执行表
 * *  act_ru_identitylink  参与者信息
 * *  act_ru_task  任务
 */
public class ActivitiCompleTask {

    //查询当前用户的任务并处理掉
    public static void main(String[] args) {
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

        TaskService taskService = processEngine.getTaskService();
        Task task = taskService.createTaskQuery()
                .processDefinitionKey("holiday2")
                .taskAssignee("zhangsan")
                .singleResult();
        //处理任务,结合当前用户任务列表的查询操作的话，任务I
        taskService.complete(task.getId());
        System.out.println("任务id："+task.getId());
    }


//    /**
//     * lishi完成自己的任务
//     * @param args
//     */
//    public static void main(String[] args) {
//        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//
//        TaskService taskService = processEngine.getTaskService();
//
//        //处理任务,结合当前用户任务列表的查询操作的话，任务ID：5002
//        taskService.complete("5002");
//    }


//    /**
//     * zhangsan完成自己的任务
//     * @param args
//     */
//    public static void main(String[] args) {
//        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//
//        TaskService taskService = processEngine.getTaskService();
//
//        //处理任务,结合当前用户任务列表的查询操作的话，任务ID：2505
//        taskService.complete("2505");
//    }
}
